Field of the Invention
The present invention relates to a method of correcting an encoder detection error caused by an eccentricity between a shaft and a rotating disc.
Description of the Related Art
Up to now, a robot arm includes a rotation drive apparatus constituted by a servo motor (hereinafter, will be referred to as motor) which is configured to drive an articulating mechanism and a reduction gear configured to obtain a high output torque. The rotation drive apparatus is provided with a rotary encoder (hereinafter, will be referred to as encoder) which is configured to detect an angle of a rotator. The encoder is directly connected to a rotation shaft of the motor and controls a tip position of a robot arm by feeding back information of the rotation angle detected by the encoder to the motor.
In recent years, since demands for an industrial robot that can assembly high-precision parts have been increased, a higher accuracy for the control on the tip position of the robot arm has also been requested. Degradation factors of a positioning accuracy for the tip position of the robot arm include an angle transmission error or a torsion of the reduction gear in the rotation drive apparatus of the robot arm, an encoder detection error, and the like. This encoder detection error refers to an error derived from a deviation based on an eccentricity when a shaft of the encoder and a rotating disc are mounted with respect to ideal positions.
First, an internal structure of the encoder will be described by using FIG. 3. In FIG. 3, an encoder 301 includes a rotating disc 302 that is fixed to a shaft 303, on which a transmission part and a non-transmission part are regularly aligned in a circumferential direction as rotating disc patterns. Furthermore, the encoder 301 is constituted by a fixed slit 305, a light emitting element 304, and a light receiving element 306 which are fixed in positions with respect to a casing of the encoder 301 and arranged so as to face the rotating disc 302.
The shaft 303 is connected to a rotation shaft where a user desires to detect a rotation angle (in the following discussion, which may be referred to as “input shaft” in the sense of an input to the reduction gear). While the input shaft and the shaft 303 are connected to each other and integrally rotate, the rotation angle of the input shaft can be detected by the encoder 301.
This encoder is a general transmission-type optical system absolute encoder. When light from the light emitting element 304 is input to the rotating disc 302, the light receiving element 306 repeats reception and non-reception of the light via the fixed slit 305 to be detected as on/off electric signals and calculates the rotation position.
The encoder is mounted to a rotator such as a shaft core of the motor or the like and realizes a highly accurate rotation position control in the rotation drive apparatus of the robot arm. As will be described step by step, if an eccentricity exists between the rotation center of the rotating disc 302 and the shaft 303, the encoder detection error caused by this eccentricity affects this highly accurate rotation position control in a non-negligible manner.
Meanwhile, with regard to a device configured to convert the rotation of the motor such as the robot arm into a torque via the reduction gear to perform the drive, a technique of providing an encoder to an output shaft of the reduction gear (hereinafter, may be referred to as “output shaft” in some cases) has been proposed. This technique is used for performing a control for positioning the output shaft at a high accuracy or a torsional feedback control for detecting a torsion in proportion to the torque of the reduction gear. This torsional feedback control is performed to address a problem that, even when the rotation shaft of the motor (input shaft) is controlled such that the rotation position is at a set rotation angle, the output shaft is not controlled to be at the target rotation angle since a torsional rigidity of the reduction gear itself is not necessarily high.
For example, Japanese Patent Laid-Open No. 2012-137310 describes a method of executing this torsional feedback control. As described in Japanese Patent Laid-Open No. 2012-137310, a rotation drive apparatus of a robot arm constituted by an input shaft encoder that detects a rotation angle of the motor, an output shaft encoder that detects a rotation angle of a rotator on an output side of the reduction gear, a motor, a reduction gear, and the like has been proposed.
However, according to the torsional feedback control, a difference between rotation position information of the output shaft encoder and rotation position information of the input shaft encoder is detected as a torsion amount, and the torsion amount is fed back to the motor to perform the control. Therefore, this is effective in the correction of the angle transmission error of the reduction gear in the rotation drive apparatus but is not the technology to address the degradation in the positioning accuracy which is caused because of the encoder detection error.
For that reason, if the encoder detection error caused by the eccentricity between the rotating center of the rotating disc and the shaft occurs in the encoder itself in the first place, it is difficult to detect the accurate rotation angle of the rotation drive apparatus. Since this encoder detection error exists, even when the technique described in Japanese Patent Laid-Open No. 2012-137310 is used in the device that utilizes the reduction gear such as the robot arm, limitations exist when the control for positioning the output shaft at a high accuracy and the torsional feedback control are performed.
For example, when an attempt is made to correct the rotation position from the output value of the output shaft encoder without addressing the problem of the encoder detection error of the input shaft encoder, an encoder involving a small encoder detection error is to be provided to the output shaft. This is because an error amount obtained by multiplying the input shaft encoder detection error by a reduction gear ratio of the reduction gear is generated as the positioning error of the output shaft.
In general, since the encoder involving the small encoder detection error is extremely expensive, it is not necessarily practical to provide the encoder to the input/output shaft of the robot arm.
That is, according to this related art method, the encoder detection error of the encoder arranged in the rotation drive apparatus is not sufficiently taken into account. For that reason, a problem occurs that it is practically difficult to perform the control for positioning the output shaft at a high accuracy and the torsional feedback control to improve the accuracy for positioning the tip position of the robot arm.